<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <title>四川大学基线平台</title>
  <link rel="stylesheet" href="layui/css/layui.css">
</head>
<body>
<div class="layui-layout layui-layout-admin">
  <div class="layui-header">
    <div class="layui-logo layui-hide-xs layui-bg-black">四川大学基线平台</div>
    <!-- 头部区域（可配合layui 已有的水平导航） -->
    <ul class="layui-nav layui-layout-left">
      <!-- 移动端显示 -->
      <li class="layui-nav-item layui-show-xs-inline-block layui-hide-sm" lay-header-event="menuLeft">
        <i class="layui-icon layui-icon-spread-left"></i>
      </li>
      <li class="layui-nav-item layui-hide-xs"><a href="index.html">回到首页</a></li>
      <!--      <li class="layui-nav-item layui-hide-xs"><a href="">分布式系统</a></li>-->
      <!--      <li class="layui-nav-item layui-hide-xs"><a href="">扩展式系统</a></li>-->
      <!--      <li class="layui-nav-item layui-hide-xs"><a href="">备份系统</a></li>-->
      <li class="layui-nav-item">
        <!--        <a href="javascript:;">日志管理</a>-->
        <dl class="layui-nav-child">
          <dd><a href="">日志系统1</a></dd>
          <dd><a href="">日志系统2</a></dd>
          <dd><a href="">日志系统3</a></dd>
        </dl>
      </li>
    </ul>
    <ul class="layui-nav layui-layout-right">
      <li class="layui-nav-item layui-hide layui-show-md-inline-block">
        <a href="javascript:;">
          <img src="//tva1.sinaimg.cn/crop.0.0.118.118.180/5db11ff4gw1e77d3nqrv8j203b03cweg.jpg"
               class="layui-nav-img">
          tester
        </a>
        <dl class="layui-nav-child">
          <dd><a href="">Your Profile</a></dd>
          <dd><a href="">Settings</a></dd>
          <dd><a href="/logout">Sign out</a></dd>
        </dl>
      </li>
      <li class="layui-nav-item" lay-header-event="menuRight" lay-unselect>
        <a href="javascript:;">
          <i class="layui-icon layui-icon-more-vertical"></i>
        </a>
      </li>
    </ul>
  </div>

  <div class="layui-side layui-bg-black">
    <div class="layui-side-scroll">
      <!-- 左侧导航区域（可配合layui已有的垂直导航） -->
      <ul class="layui-nav layui-nav-tree" lay-filter="test">
        <li class="layui-nav-item layui-nav-itemed">
          <a class="" href="javascript:;">基础管理</a>
          <dl class="layui-nav-child">
            <dd><a href="user.html">用户管理</a></dd>
          </dl>
        </li>
        <li class="layui-nav-item layui-nav-itemed">
          <a href="javascript:;">设备管理</a>
          <dl class="layui-nav-child">
            <dd><a href="device.html">设备列表</a></dd>
            <dd><a href="scanData.html">扫描数据列表</a></dd>
          </dl>
        </li>
        <li class="layui-nav-item layui-nav-itemed">
          <a href="javascript:;">系统统计</a>
          <dl class="layui-nav-child">
            <dd><a href="policyCount.html">安全策略统计</a></dd>
<!--            <dd><a href="policyDetial.html">安全策略详情</a></dd>-->
          </dl>
        </li>
        <li class="layui-nav-item layui-nav-itemed">
          <a href="index_user.html">客户端下载</a>
        </li>

      </ul>
    </div>
  </div>

  <div class="layui-body">
    <!-- 内容主体区域 -->

    <div style="padding: 15px;">
      <span class="layui-breadcrumb">
        <a href="index.html">首页</a>
        <a><site>设备管理</site></a>
        <a><site>扫描数据列表</site></a>
        <a><site>详情</site></a>
      </span>

      <hr class="layui-bg-blue">
      <table class="layui-hide" id="test" lay-filter="test"></table>
<!--      <fieldset class="layui-elem-field">-->
<!--        <legend>主板名称</legend>-->
<!--        <div class="layui-field-box" id="basename"></div>-->
<!--        <script type="text/javascript">-->
<!--          var str = $(#test).val(basename);-->
<!--          alert(str);-->
<!--          document.getElementById('test').innerHTML = str;-->
<!--        </script>-->
<!--      </fieldset>-->
    </div>
  </div>

  <div class="layui-footer">
    <!-- 底部固定区域 -->
    Copyright © 2022 &nbsp;&nbsp; 四川大学 &nbsp;&nbsp; www.scdx.com
  </div>
</div>
<script src="layui/layui.js" charset="utf-8"></script>
<script src="jquery/jquery-3.6.0.js" charset="utf-8"></script>

<script type="text/html" id="toolbarDemo">
  <div class="layui-btn-container">
  </div>
</script>


<script type="text/html" id="barDemo">
  <!--  <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>-->
<!--  <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>-->
</script>


<script>

  $("#iReset").click(function () {
    $("#search_scanId").val("");
    $("#search_policyCheck").val("");
    tableFlush();
  });

  $("#searchVal").click(function () {
    let search_scanId = $("#search_scanId").val();
    let search_policyCheck = $("#search_policyCheck").val();
    tableFlush(search_scanId, search_policyCheck);
  });

  function tableFlush(search_scanId, search_policyCheck) {
    let search_json = {};
    if (search_scanId != null && search_scanId != '') {
      search_json.search_scanId = search_scanId;
    }
    if (search_policyCheck != null && search_policyCheck != '') {
      search_json.search_policyCheck = search_policyCheck;
    }

    // alert(JSON.stringify(search_json));
    function GetUrlParam(name) {
      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
      var r = window.location.search.substr(1).match(reg);
      if (r != null) return unescape(r[2]);
      return null;
    }

    //使用获取参数方法
    var basename = GetUrlParam("basename");
    console.log((basename))

    layui.use('table', function () {
      var table = layui.table;

      $.ajax({
        url: '/baseline/selectByBasename',
        type: 'post',
        data: {
          basename: basename
        }, // 传递给后端的参数
        datatype: "json",        // 返回类型，text文本、html页面、json数据
        success: function (response) {
          console.log("返回: " + response);
          if (response.code === 200) {
            var res = [response.data]
            console.log(res)

            table.render({
              elem: '#test'
              , data: res          // 追加搜索条件
              , toolbar: '#toolbarDemo' //开启头部工具栏，并为其绑定左侧模板
              , defaultToolbar: ['filter', 'exports', 'print', { //自定义头部工具栏右侧图标。如无需自定义，去除该参数即可
                title: '提示'
                , layEvent: 'LAYTABLE_TIPS'
                , icon: 'layui-icon-tips'
              }]
              , title: '扫描数据表'
              , cols: [[
                // {type: 'checkbox', fixed: 'left'}
                // , {
                //   field: 'id', title: 'ID', width: 80, unresize: true, templet: function (res) {
                //     return '<em>' + res.id + '</em>'
                //   }
                // }
                // , {
                //   field: 'scan_id', title: '扫描任务ID', width: 120, templet: function (res) {
                //     return '<em>' + res.scanId + '</em>'
                //   }
                // }
                , {
                  field: 'basename', title: '主板名称', width: 120, templet: function (res) {
                    return '<em>' + res.basename + '</em>'
                  }
                }
                , {
                  field: 'hostname', title: '主机名称', width: 100, templet: function (res) {
                    return '<em>' + res.hostname + '</em>'
                  }
                }
                , {
                  field: 'ip', title: 'IP地址', templet: function (res) {
                    return '<em>' + res.ip + '</em>'
                  }
                }
                , {
                  field: 'osInfo', title: '操作系统信息', templet: function (res) {
                    return '<em>' + res.osInfo + '</em>'
                  }
                }
                , {
                  field: 'cpuInfo', title: 'CPU信息', templet: function (res) {
                    return '<em>' + res.cpuInfo + '</em>'
                  }
                }
                , {
                  field: 'openPort', title: '开放端口', templet: function (res) {
                    return '<em>' + res.openPort + '</em>'
                  }
                }
                , {
                  field: 'usedMemory', title: '内存使用情况', templet: function (res) {
                    return '<em>' + res.usedMemory + '</em>'
                  }
                }
                // , {fixed: 'right', title: '操作', toolbar: '#barDemo', width: 150}
              ]]
              // , page: true
            });
          }
        },
        error: function (response) {
          console.log("出错返回: " + response);
        }
      })


      //头工具栏事件
      table.on('toolbar(test)', function (obj) {
        var checkStatus = table.checkStatus(obj.config.id);
        switch (obj.event) {
          case 'getCheckData':
            var data = checkStatus.data;             // jsonArray
            layer.alert(JSON.stringify(data));       // 把一个jsonArray转换为字符串输出
            break;
          case 'getCheckLength':
            var data = checkStatus.data;
            layer.msg('选中了：' + data.length + ' 个');
            break;
          case 'isAll':
            layer.msg(checkStatus.isAll ? '全选' : '未全选');
            break;
          case 'insertData':   // 新增用户
            layer.open({     // 弹出框处理  模态框
              type: 1               // 模态框
              , title: '新增用户' //不显示标题栏
              , closeBtn: false
              , area: ['500px', '500px']  // 宽和高
              , shade: 0.5
              , id: 'LAY_layuipro' //设定一个id，防止重复弹出
              , btn: ['新增', '取消']
              , btnAlign: 'c'
              , moveType: 1 //拖拽模式，0或者1
              , content: $('#insert_form').html()         // 引入自定义表单
              , btn1: function (index, layero) {            // 这个是新增按钮点击事件
                // layer.msg("新增按钮执行");
                let scanId = $("#insert_scanId").val();
                let policyCode = $("#insert_policyCode").val();
                $.ajax({
                  url: "/baseline/insert",           // 请求路径
                  type: "post",                  // 请求的方式，不区分大小写
                  cache: false,                  // 关闭缓存，目的是为了避免部分浏览器缓存加载出错(IE)
                  contentType: "application/json;charset=utf-8",
                  data: JSON.stringify({

                    scanId: scanId,
                    policyCode: policyCode

                  }),
                  datatype: "json",        // 返回类型，text文本、html页面、json数据
                  success: function (response) {
                    console.log("返回: " + response);
                    if (response.code === 200) {
                      layer.msg("新增用户成功!");
                      layer.close(index);                         // 关闭当前窗口
                      tableFlush();
                    }
                  },
                  error: function (response) {
                    console.log("出错返回: " + response);
                  }
                });
              }
              , success: function (layero) {

              }
            });
            break;
                //自定义头工具栏右侧图标 - 提示
          case 'LAYTABLE_TIPS':
            layer.alert('这是工具栏右侧自定义的一个图标按钮');
            break;
        }
        ;
      });

      //监听行工具事件
      table.on('tool(test)', function (obj) {
        var data = obj.data;
        console.log(JSON.stringify(data));                 // 这样的日志会输出到浏览器的console控制台中
        if (obj.event === 'del') {                           // 删除操作
          layer.confirm('真的删除行么', function (index) {
            $.ajax({
              url: "/baseline/deleteById",       // 请求路径
              type: "post",                  // 请求的方式，不区分大小写
              cache: false,                  // 关闭缓存，目的是为了避免部分浏览器缓存加载出错(IE)
              data: {
                id: data.id
              },
              datatype: "json",             // 返回类型，text文本、html页面、json数据
              success: function (response) {
                console.log("返回: " + response);
                if (response.code === 200) {
                  layer.msg("删除用户成功!");
                  layer.close(index);                         // 关闭当前窗口
                  tableFlush();
                }
              },
              error: function (response) {
                console.log("出错返回: " + response);
              }
            });
          });
        } else if (obj.event === 'edit') {   // 更新操作
          layer.open({     // 弹出框处理  模态框
            type: 1               // 模态框
            , title: '更新用户' //不显示标题栏
            , closeBtn: false
            , area: ['500px', '500px']  // 宽和高
            , shade: 0.5
            , id: 'LAY_layuipro' //设定一个id，防止重复弹出
            , btn: ['更新', '取消']
            , btnAlign: 'c'
            , moveType: 1 //拖拽模式，0或者1
            , content: $('#update_form').html()         // 引入自定义表单
            , btn1: function (index, layero) {            // 这个是新增按钮点击事件
              // layer.msg("新增按钮执行");
              let id = data.id;
              let scanId = data.scanId;
              let policyCode = $("#update_policyCode").val();
              let policyAdvice = $("#update_policyAdvice").val();
              let hostname = $("#update_hostname").val();
              let policyCheck = $("#update_policyCheck").val();
              let ip = $("#update_ip").val();
              let basename = $("#update_basename").val();
              $.ajax({
                url: "/baseline/updateById",           // 请求路径
                type: "post",                  // 请求的方式，不区分大小写
                cache: false,                  // 关闭缓存，目的是为了避免部分浏览器缓存加载出错(IE)
                contentType: "application/json;charset=utf-8",
                data: JSON.stringify({
                  id: id,
                  scanId: scanId,
                  policyCode: policyCode,
                  basename: basename,
                  policyAdvice: policyAdvice,
                  hostname: hostname,
                  policyCheck: policyCheck,
                  ip: ip
                }),
                datatype: "json",        // 返回类型，text文本、html页面、json数据
                success: function (response) {
                  console.log("返回: " + response);
                  if (response.code === 200) {
                    layer.msg("更新用户成功!");
                    layer.close(index);                         // 关闭当前窗口
                    tableFlush();
                  }
                },
                error: function (response) {
                  console.log("出错返回: " + response);
                }
              });
            }
            , success: function (layero) {
              $("#update_scanId").val(data.scanId);
              $("#update_policyCode").val(data.policyCode);
              $("#update_basename").val(data.basename);
              $("#update_policyAdvice").val(data.policyAdvice);
              $("#update_hostname").val(data.hostname);
              $("#update_policyCheck").val(data.policyCheck);
              $("#update_ip").val(data.ip);
            }
          });
        }
      });
    });
  }

  tableFlush();
</script>


</body>
</html>